<!doctype html>
<html lang="zh-cn">
  <head>
    <title>Linux高级指令 // JW Blog</title>
    <meta charset="utf-8" />
    <meta name="generator" content="Hugo 0.60.1" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="author" content="John Doe" />
    <meta name="description" content="" />
    <link rel="stylesheet" href="https://duyi111.gitee.io/css/main.min.f90f5edd436ec7b74ad05479a05705770306911f721193e7845948fb07fe1335.css" />

    
    <meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Linux高级指令"/>
<meta name="twitter:description" content="1.重定向命令 1.1 重定向命令的介绍  重定向也被称为输出重定向，把在终端执行命令的结果保存到目标文件  1.2 重定向命令的使用  &gt;：如果文件存在会覆盖原有文件内容，相当于文件操作中的“w”模式 &gt;&gt;：如果文件存在会追加写入文件末尾，相当于文件操作中的“a”模式  1.3 小结  只要是在终端能显示信息的命令都可以使用重定向 终端内容保存到文件使用重定向有两种方式：&gt;和&raquo; &gt; 表示每次只写入最新的数据，原有数据不保留 &gt;&gt; 表示每次在原有数据的基础上进行追加，原有数据会保留  2.查看文件内容命令 2.1 查看文件内容命令的使用  cat：查看小型文件  cat命令结合重定向可以完成多个文件的合并   more：分屏查看大型文件  空格：显示下一屏信息 回车：显示下一行信息 b：显示上一屏信息 f：显示下一屏信息 q：退出    2.2 管道命令的使用  管道（|）:一个命令的输出可以通过管道作为另一个命令的输入 管道一般结合more命令使用，主要是分屏查看终端显示内容  3.链接命令 3.1 介绍  链接命令是创建链接文件，链接文件分为软链接和硬链接 ln -s：创建软链接 ln：创建硬链接  3.2 软链接  软链接类似于Windows下的快捷方式 如果软链接和源文件不在同一个目录，源文件要使用绝对路径 删除源文件则软链接失效 可以给目录创建软链接 小结:  软链接的作用是方便文件的快速访问 创建软链接命令格式：ln -s 源文件路径 软链接    3."/>

    <meta property="og:title" content="Linux高级指令" />
<meta property="og:description" content="1.重定向命令 1.1 重定向命令的介绍  重定向也被称为输出重定向，把在终端执行命令的结果保存到目标文件  1.2 重定向命令的使用  &gt;：如果文件存在会覆盖原有文件内容，相当于文件操作中的“w”模式 &gt;&gt;：如果文件存在会追加写入文件末尾，相当于文件操作中的“a”模式  1.3 小结  只要是在终端能显示信息的命令都可以使用重定向 终端内容保存到文件使用重定向有两种方式：&gt;和&raquo; &gt; 表示每次只写入最新的数据，原有数据不保留 &gt;&gt; 表示每次在原有数据的基础上进行追加，原有数据会保留  2.查看文件内容命令 2.1 查看文件内容命令的使用  cat：查看小型文件  cat命令结合重定向可以完成多个文件的合并   more：分屏查看大型文件  空格：显示下一屏信息 回车：显示下一行信息 b：显示上一屏信息 f：显示下一屏信息 q：退出    2.2 管道命令的使用  管道（|）:一个命令的输出可以通过管道作为另一个命令的输入 管道一般结合more命令使用，主要是分屏查看终端显示内容  3.链接命令 3.1 介绍  链接命令是创建链接文件，链接文件分为软链接和硬链接 ln -s：创建软链接 ln：创建硬链接  3.2 软链接  软链接类似于Windows下的快捷方式 如果软链接和源文件不在同一个目录，源文件要使用绝对路径 删除源文件则软链接失效 可以给目录创建软链接 小结:  软链接的作用是方便文件的快速访问 创建软链接命令格式：ln -s 源文件路径 软链接    3." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://duyi111.gitee.io/post/linux%E9%AB%98%E7%BA%A7%E6%8C%87%E4%BB%A4/" />
<meta property="article:published_time" content="2020-01-17T16:25:42+08:00" />
<meta property="article:modified_time" content="2020-01-17T16:25:42+08:00" />


  </head>
  <body>
    <header class="app-header">
      <a href="https://duyi111.gitee.io/"><img class="app-header-avatar" src="/avatar.jpg" alt="John Doe" /></a>
      <h1>JW Blog</h1>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vehicula turpis sit amet elit pretium.</p>
      <div class="app-header-social">
        
      </div>
    </header>
    <main class="app-container">
      
  <article class="post">
    <header class="post-header">
      <h1 class ="post-title">Linux高级指令</h1>
      <div class="post-meta">
        <div>
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-calendar">
  <title>calendar</title>
  <rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line>
</svg>
          Jan 17, 2020
        </div>
        <div>
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-clock">
  <title>clock</title>
  <circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline>
</svg>
          2 min read
        </div></div>
    </header>
    <div class="post-content">
      <h2 id="1">1.重定向命令</h2>
<h3 id="11-">1.1 重定向命令的介绍</h3>
<ul>
<li>重定向也被称为输出重定向，把在终端执行命令的结果保存到目标文件</li>
</ul>
<h3 id="12-">1.2 重定向命令的使用</h3>
<ul>
<li>&gt;：如果文件存在会覆盖原有文件内容，相当于文件操作中的“w”模式</li>
<li>&gt;&gt;：如果文件存在会追加写入文件末尾，相当于文件操作中的“a”模式</li>
</ul>
<h3 id="13-">1.3 小结</h3>
<ul>
<li>只要是在终端能显示信息的命令都可以使用重定向</li>
<li>终端内容保存到文件使用重定向有两种方式：&gt;和&raquo;</li>
<li>&gt; 表示每次只写入最新的数据，原有数据不保留</li>
<li>&gt;&gt; 表示每次在原有数据的基础上进行追加，原有数据会保留</li>
</ul>
<h2 id="2">2.查看文件内容命令</h2>
<h3 id="21-">2.1 查看文件内容命令的使用</h3>
<ul>
<li>cat：查看小型文件
<ul>
<li>cat命令结合重定向可以完成多个文件的合并</li>
</ul>
</li>
<li>more：分屏查看大型文件
<ul>
<li>空格：显示下一屏信息</li>
<li>回车：显示下一行信息</li>
<li>b：显示上一屏信息</li>
<li>f：显示下一屏信息</li>
<li>q：退出</li>
</ul>
</li>
</ul>
<h3 id="22-">2.2 管道命令的使用</h3>
<ul>
<li>管道（|）:一个命令的输出可以通过管道作为另一个命令的输入</li>
<li>管道一般结合more命令使用，主要是分屏查看终端显示内容</li>
</ul>
<h2 id="3">3.链接命令</h2>
<h3 id="31-">3.1 介绍</h3>
<ul>
<li>链接命令是创建链接文件，链接文件分为软链接和硬链接</li>
<li>ln -s：创建软链接</li>
<li>ln：创建硬链接</li>
</ul>
<h3 id="32-">3.2 软链接</h3>
<ul>
<li>软链接类似于Windows下的快捷方式</li>
<li>如果软链接和源文件不在同一个目录，源文件要使用绝对路径</li>
<li>删除源文件则软链接失效</li>
<li>可以给目录创建软链接</li>
<li>小结:
<ul>
<li>软链接的作用是方便文件的快速访问</li>
<li>创建软链接命令格式：<code>ln -s 源文件路径 软链接</code></li>
</ul>
</li>
</ul>
<h3 id="33-">3.3 硬链接</h3>
<ul>
<li>硬链接类似于源文件的一个别名，也就是说这两个名字指向的是同一个文件数据</li>
<li>创建硬链接使用相对路径和绝对路径都可以</li>
<li>删除源文件，硬链接还可以访问到数据</li>
<li>创建硬链接，硬链接数会加1，删除源文件或者硬链接，硬连接数会减1（硬链接数就是文件数据被文件名使用的次数，好比引用计数）</li>
<li>创建软链接，硬链接数不会加1</li>
<li>不能给目录创建硬链接</li>
<li>小结：
<ul>
<li>硬链接的作用是可以给重要文件创建硬链接，防止文件数据被误删</li>
<li>删除源文件，软链接失效，但是硬链接依然可以使用</li>
<li>创建硬链接命令格式:<code>ln 源文件路径 硬链接</code></li>
</ul>
</li>
</ul>
<h2 id="4">4.文本搜索命令</h2>
<ul>
<li>格式
<ul>
<li><code>grep 选项 文本搜索内容</code></li>
</ul>
</li>
<li>grep命令选项：
<ul>
<li>-i：忽略大小写</li>
<li>-n：显示匹配行号</li>
<li>-v：显示不包含匹配文本的所有行</li>
</ul>
</li>
<li>grep命令结合正则表达式的使用
<ul>
<li>^：以指定字符串开头</li>
<li>$：以指定字符串结尾</li>
<li>.：匹配一个非换行符的字符</li>
</ul>
</li>
</ul>
<h2 id="5">5.查找文件命令</h2>
<ul>
<li>格式：
<ul>
<li><code>find 指定查找目录 -name '文件名'</code></li>
</ul>
</li>
<li>find命令选项：
<ul>
<li>-name：根据文件名（包括目录名）查找</li>
</ul>
</li>
<li>find命令结合通配符的使用
<ul>
<li>通配符：是一种特殊语句，主要有星号（*）和问号（?），用来模糊搜索文件</li>
<li>*：代表0个或多个任意字符</li>
<li>?：代表任意一个字符</li>
<li>通配符不仅能够结合find命令使用，还可以结合其它命令使用，比如ls，mv，cp等，但是需要注意只有find命令使用通配符需要加上引号</li>
</ul>
</li>
</ul>
<h2 id="6">6.压缩和解压缩命令</h2>
<h3 id="61-">6.1 说明</h3>
<ul>
<li>.gz和.bz2的压缩文件使用tar命令来完成压缩和解压缩</li>
<li>.zip的压缩文件使用zip和unzip命令来完成压缩和解压缩</li>
</ul>
<h3 id="62-tar">6.2 tar命令及选项的使用</h3>
<ul>
<li>tar
<ul>
<li>-c：创建打包文件</li>
<li>-v：显示打包或者解包的详细信息</li>
<li>-f：指定文件名称，必须放到所有选项后面</li>
<li>-z：压缩或解压缩（.gz）</li>
<li>-j：压缩或解压缩（.bz2）</li>
<li>-x：解包</li>
<li>-C：解压缩到指定目录</li>
</ul>
</li>
</ul>
<h3 id="63-zipunzip">6.3 zip和unzip命令及选项的使用</h3>
<ul>
<li>zip：压缩成.zip格式文件</li>
<li>unzip：解压缩.zip格式文件
<ul>
<li>-d：解压缩到指定目录</li>
</ul>
</li>
</ul>
<h3 id="64-">6.4 小结</h3>
<ul>
<li>压缩文件尽量使用.gz格式，因为占用空间较少</li>
<li>使用zip命令压缩的文件占用空间比较多，当时比较通用，操作更加简单</li>
</ul>
<h2 id="7">7.文件权限命令</h2>
<h3 id="71-chmod">7.1 chmod命令的介绍</h3>
<ul>
<li>chmod
<ul>
<li>修改文件权限</li>
<li>chmod修改文件权限有两种方法
<ul>
<li>字母法</li>
<li>数字法</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3 id="72-chmod">7.2 chmod字母法的使用</h3>
<ul>
<li>角色说明
<ul>
<li>u：user，表示该文件的所有者</li>
<li>g：group，表示用户组</li>
<li>o：other，表示其他用户</li>
<li>a：all，表示所有用户</li>
</ul>
</li>
<li>权限设置说明
<ul>
<li>+：增加权限</li>
<li>-：撤销权限</li>
<li>=：设置权限</li>
</ul>
</li>
<li>权限说明
<ul>
<li>r：可读</li>
<li>w：可写</li>
<li>x：可执行</li>
<li>-：无任何权限</li>
</ul>
</li>
</ul>
<h3 id="73-chmod">7.3 chmod数字法的使用</h3>
<ul>
<li>数字法就是“rwx”这些权限也可以用数值代替</li>
<li>权限说明
<ul>
<li>r：可读，权限值是4</li>
<li>w：可写，权限值是2</li>
<li>x：可执行，权限值是1</li>
<li>-：无任何权限，权限值是0</li>
</ul>
</li>
</ul>
<h3 id="74-">7.4 小结</h3>
<ul>
<li>利用chmod命令可以控制文件的操作权限</li>
<li>字母法格式：<code>chmod 不同角色设置的权限 文件名</code></li>
<li>数字法格式：<code>chmod 不同角色的权限值 文件名</code></li>
</ul>
<h2 id="8">8.获取管理员权限的相关命令</h2>
<h3 id="81-sudo">8.1 sudo命令的使用</h3>
<ul>
<li>sudo -s：切换到root用户，获取管理员权限
<ul>
<li>如果大量操作都需要使用管理员权限使用<code>sudo -s</code>命令，但是操作需谨慎</li>
</ul>
</li>
<li>sudo：某个命令的执行需要获取管理员权限可以在执行命令前面加上sudo
<ul>
<li>如果只是某次操作需要使用管理员权限建议使用<code>sudo</code>，也就是说临时使用管理员权限</li>
</ul>
</li>
</ul>
<h3 id="82-whoami">8.2 whoami命令的使用</h3>
<ul>
<li>whioami
<ul>
<li>查看当前用户</li>
</ul>
</li>
</ul>
<h3 id="83-exit">8.3 exit命令的使用</h3>
<ul>
<li>exit
<ul>
<li>退出登录用户
<ul>
<li>如果是切换后的登录用户，退出则返回上一个登录账号</li>
<li>如果是终端界面，退出当前终端</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3 id="84-who">8.4 who命令的使用</h3>
<ul>
<li>who
<ul>
<li>查看所有的登录用户</li>
</ul>
</li>
</ul>
<h3 id="85-passwd">8.5 passwd命令的使用</h3>
<ul>
<li>passwd
<ul>
<li>修改用户密码，不指定用户默认修改当前登录用户密码</li>
</ul>
</li>
</ul>
<h3 id="86-which">8.6 which命令的使用</h3>
<ul>
<li>which
<ul>
<li>查看命令位置</li>
</ul>
</li>
</ul>
<h3 id="87-">8.7 关机和重启命令的使用</h3>
<ul>
<li>shutdown -h now：立刻关机</li>
<li>reboot：重启</li>
</ul>
<h2 id="9">9.用户相关操作</h2>
<h3 id="91-">9.1 创建用户</h3>
<ul>
<li>useradd：创建（添加）用户
<ul>
<li>-m：自动创建用户主目录，主目录的名字就是用户名</li>
<li>创建用户如果不指定用户组，默认会自动创建一个同名的用户组</li>
<li>查看用户是否创建成功，可以查看/etc/passwd这个文件</li>
<li>查看用户组是否创建成功，可以查看/etc/group这个文件</li>
</ul>
</li>
<li>id：查看用户信息
<ul>
<li>第一个：uid表示用户id</li>
<li>第二个：gid表示用户组id</li>
<li>第三个：组表示用户所在的用户组</li>
</ul>
</li>
</ul>
<h3 id="92-">9.2 设置密码</h3>
<ul>
<li>格式：
<ul>
<li><code>sudo passwd 用户名</code></li>
</ul>
</li>
</ul>
<h3 id="93-">9.3 切换用户</h3>
<ul>
<li>格式：
<ul>
<li><code>su -用户名</code></li>
</ul>
</li>
</ul>
<h3 id="94-">9.4 修改用户信息</h3>
<ul>
<li>usermod：修改用户信息
<ul>
<li>G：设置一个附加组</li>
</ul>
</li>
</ul>
<h3 id="95-">9.5 删除用户</h3>
<ul>
<li>userdel：删除用户
<ul>
<li>-r 用户名：删除用户主目录。必须要设置，否则用户主目录不会删除</li>
</ul>
</li>
</ul>
<h2 id="10">10.远程登录</h2>
<ul>
<li>格式：
<ul>
<li><code>ssh 用户名@ip地址</code></li>
</ul>
</li>
<li>假如ubuntu作为服务器，需要安装ssh服务器软件，执行命令<code>sudo apt-get install openssh-server</code>，在ubuntu安装ssh客户端命令<code>sudo apt-get install openssh-client</code></li>
<li>客户端电脑如果是windows系统则需要安装OpenSSH for Windows这个软件</li>
<li>客户端电脑如果是macos系统则不需要安装ssh客户端软件，默认已经安装过了，直接可以使用ssh命令</li>
</ul>

    </div>
    <div class="post-footer">
      
    </div>
  </article>

    </main>
  </body>
</html>
